package extenstion.scope

import extenstion.Extenstion
//引用扩展方法
import extenstion.scope.low.scopeAction
import java.util.*

class ExtScope {

    /**
     * 将扩展方法私有化，限制该扩展方法的作用域
     */
    private fun Int.Companion.randomRange() = Random().nextInt(100)

    /**
     * 调用私有的扩展方法
     */
    fun printlnRandom() {
        println(Int.randomRange())
    }
}


fun main(args: Array<String>) {
    ExtScope().printlnRandom()

    //无法直接调用私有化扩展方法
//    println(Int.randomRange())

    //扩展方法可以不再同一个顶级包下，但需引用(import)
    println(Extenstion("ScopeAction").scopeAction())
}

